Finding Relatives in a Database

ABSTRACT

Determining relative relationships of people who share a common ancestor within at least a threshold number of generations includes: receiving recombinable deoxyribonucleic acid (DNA) sequence information of a first user and recombinable DNA sequence information of a plurality of users; processing, using one or more computer processors, the recombinable DNA sequence information of the plurality of users in parallel; determining, based at least in part on a result of processing the recombinable DNA information of the plurality of users in parallel, a predicted degree of relationship between the first user and a user among the plurality of users, the predicted degree of relative relationship corresponding to a number of generations within which the first user and the second user share a common ancestor.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of and claims priority to U.S. patentapplication Ser. No. 17/975,949, filed Oct. 28, 2022.

U.S. patent application Ser. No. 17/975,949 is a continuation of andclaims priority to U.S. patent application Ser. No. 17/576,738, filedJan. 14, 2022.

U.S. patent application Ser. No. 17/576,738 is a continuation of andclaims priority to U.S. patent application Ser. No. 17/351,052, filedJun. 17, 2021.

U.S. patent application Ser. No. 17/351,052 is a continuation of andclaims priority to U.S. patent application Ser. No. 17/073,110, filedOct. 16, 2020.

U.S. patent application Ser. No. 17/073,110 is a continuation of andclaims priority to U.S. patent application Ser. No. 16/129,645, filedSep. 12, 2018.

U.S. patent application Ser. No. 16/129,645 is a continuation of andclaims priority to U.S. patent application Ser. No. 15/264,493, filedSep. 13, 2016.

U.S. patent application Ser. No. 15/264,493 is a continuation of andclaims priority to U.S. patent application Ser. No. 13/871,744, filedApr. 26, 2013.

U.S. patent application Ser. No. 13/871,744 is a continuation of andclaims priority to U.S. patent application Ser. No. 12/644,791, filedDec. 22, 2009.

U.S. patent application Ser. No. 12/644,791 is a continuation of andclaims priority to U.S. provisional patent application no. 61/204,195,filed Dec. 31, 2008.

All of these cited priority applications are hereby incorporated byreference in their entirety.

BACKGROUND OF THE INVENTION

Genealogy is the study of the history of families and the line ofdescent from ancestors. It is an interesting subject studied by manyprofessionals as well as hobbyists. Traditional genealogical studytechniques typically involve constructing family trees based on surnamesand historical records. As gene sequencing technology becomes moreaccessible, there has been growing interest in genetic ancestry testingin recent years.

Existing genetic ancestry testing techniques are typically based ondeoxyribonucleic acid (DNA) information of the Y chromosome (Y-DNA) orDNA information of the mitochondria (mtDNA). Aside from a small amountof mutation, the Y-DNA is passed down unchanged from father to son andtherefore is useful for testing patrilineal ancestry of a man. The mtDNAis passed down mostly unchanged from mother to children and therefore isuseful for testing a person's matrilineal ancestry. These techniques arefound to be effective for identifying individuals that are related manygenerations ago (e.g., 10 generations or more), but are typically lesseffective for identifying closer relationships. Further, manyrelationships that are not strictly patrilineal or matrilineal cannot beeasily detected by the existing techniques.

BRIEF DESCRIPTION OF THE DRAWINGS

Various embodiments of the invention are disclosed in the followingdetailed description and the accompanying drawings.

FIG. 1 is a block diagram illustrating an embodiment of a relativefinding system.

FIG. 2 is a flowchart illustrating an embodiment of a process forfinding relatives in a relative finding system.

FIG. 3 is a flowchart illustrating an embodiment of a process forconnecting a user with potential relatives found in the database.

FIGS. 4A-4I are screenshots illustrating user interface examples inconnection with process 300.

FIG. 5 is a diagram illustrating an embodiment of a process fordetermining the expected degree of relationship between two users.

FIG. 6 is a diagram illustrating example DNA data used for IBDidentification by process 500.

FIG. 7 shows the simulated relationship distribution patterns fordifferent population groups according to one embodiment.

FIG. 8 is a diagram illustrating an embodiment of a highly parallel IBDidentification process.

FIG. 9 is a diagram illustrating an example in which phased data iscompared to identify IBD.

DETAILED DESCRIPTION

The invention can be implemented in numerous ways, including as aprocess; an apparatus; a system; a composition of matter; a computerprogram product embodied on a computer readable storage medium; and/or aprocessor, such as a processor configured to execute instructions storedon and/or provided by a memory coupled to the processor. In thisspecification, these implementations, or any other form that theinvention may take, may be referred to as techniques. In general, theorder of the steps of disclosed processes may be altered within thescope of the invention. Unless stated otherwise, a component such as aprocessor or a memory described as being configured to perform a taskmay be implemented as a general component that is temporarily configuredto perform the task at a given time or a specific component that ismanufactured to perform the task. As used herein, the term ‘processor’refers to one or more devices, circuits, and/or processing coresconfigured to process data, such as computer program instructions.

A detailed description of one or more embodiments of the invention isprovided below along with accompanying figures that illustrate theprinciples of the invention. The invention is described in connectionwith such embodiments, but the invention is not limited to anyembodiment. The scope of the invention is limited only by the claims andthe invention encompasses numerous alternatives, modifications andequivalents. Numerous specific details are set forth in the followingdescription in order to provide a thorough understanding of theinvention. These details are provided for the purpose of example and theinvention may be practiced according to the claims without some or allof these specific details. For the purpose of clarity, technicalmaterial that is known in the technical fields related to the inventionhas not been described in detail so that the invention is notunnecessarily obscured.

Because of recombination and independent assortment of chromosomes, theautosomal DNA and X chromosome DNA (collectively referred to asrecombinable DNA) from the parents is shuffled at the next generation,with small amounts of mutation. Thus, only relatives will share longstretches of genome regions where their recombinable DNA is completelyor nearly identical. Such regions are referred to as “Identical byDescent” (IBD) regions because they arose from the same DNA sequences inan earlier generation. The relative finder technique described below isbased at least in part on locating IBD regions in the recombinablechromosomes of individuals.

In some embodiments, locating IBD regions includes sequencing the entiregenomes of the individuals and comparing the genome sequences. In someembodiments, locating IBD regions includes assaying a large number ofmarkers that tend to vary in different individuals and comparing themarkers. Examples of such markers include Single NucleotidePolymorphisms (SNPs), which are points along the genome with two or morecommon variations; Short Tandem Repeats (STRs), which are repeatedpatterns of two or more repeated nucleotide sequences adjacent to eachother; and Copy-Number Variants (CNVs), which include longer sequencesof DNA that could be present in varying numbers in differentindividuals. Long stretches of DNA sequences from different individuals'genomes in which markers in the same locations are the same or at leastcompatible indicate that the rest of the sequences, although not assayeddirectly, are also likely identical.

FIG. 1 is a block diagram illustrating an embodiment of a relativefinding system. In this example, relative finder system 102 may beimplemented using one or more server computers having one or moreprocessors, one or more special purpose computing appliances, or anyother appropriate hardware, software, or combinations thereof. Theoperations of the relative finder system are described in greater detailbelow. In this example, various users of the system (e.g., user 1(“Alice”) and user 2 (“Bob”)) access the relative finder system via anetwork 104 using client devices such as 106 and 108. User information(including genetic information and optionally other personal informationsuch as family information, population group, etc.) pertaining to theusers is stored in a database 110, which can be implemented on anintegral storage component of the relative finder system, an attachedstorage device, a separate storage device accessible by the relativefinder system, or a combination thereof. Many different arrangements ofthe physical components are possible in various embodiments. In variousembodiments, the entire genome sequences or assayed DNA markers (SNPs,STRs, CNVs, etc.) are stored in the database to facilitate the relativefinding process. For example, approximately 650,000 SNPs perindividual's genome are assayed and stored in the database in someimplementations.

System 100 shown in this example includes genetic and other additionalnon-genetic information for many users. By comparing the recombinableDNA information to identify IBD regions between various users, therelative finder system can identify users within the database that arerelatives. Since more distant relationships (second cousins or further)are often unknown to the users themselves, the system allows the usersto “opt-in” and receive notifications about the existence of relativerelationships. Users are also presented with the option of connectingwith their newly found relatives.

FIG. 2 is a flowchart illustrating an embodiment of a process forfinding relatives in a relative finding system. Process 200 may beimplemented on a relative finder system such as 100. The process may beinvoked, for example, at a user's request to look for potentialrelatives this user may have in the database or by the system to assessthe potential relationships among various users. At 202, recombinableDNA information of a first user (e.g., Alice) and of a second user(e.g., Bob) is received. In some embodiments, the information isretrieved from a database that stores recombinable DNA information of aplurality of users as well as any additional user information. Forpurposes of illustration, SNP information is described extensively inthis and following examples. Other DNA information such as STRinformation and/or CNV information may be used in other embodiments.

At 204, a predicted degree of relationship between Alice and Bob isdetermined. In some embodiments, a range of possible relationshipsbetween the users is determined and a prediction of the most likelyrelationship between the users is made. In some embodiments, it isoptionally determined whether the predicted degree of relationship atleast meets a threshold. The threshold may be a user configurable value,a system default value, a value configured by the system's operator, orany other appropriate value. For example, Bob may select fivegenerations as the maximum threshold, which means he is interested indiscovering relatives with whom the user shares a common ancestor fivegenerations or closer. Alternatively, the system may set a default valueminimum of three generations, allowing the users to by default findrelatives sharing a common ancestor at least three generations out orbeyond. In some embodiments, the system, the user, or both, have theoption to set a minimum threshold (e.g., two generations) and a maximumthreshold (e.g., six generations) so that the user would discoverrelatives within a maximum number of generations, but would not besurprised by the discovery of a close relative such as a sibling who waspreviously unknown to the user.

At 206, Alice or Bob (or both) is notified about her/his relativerelationship with the other user. In some embodiments, the systemactively notifies the users by sending messages or alerts about therelationship information when it becomes available. Other notificationtechniques are possible, for example by displaying a list or table ofusers that are found to be related to the user. Depending on systemsettings, the potential relatives may be shown anonymously for privacyprotection, or shown with visible identities to facilitate makingconnections. In embodiments where a threshold is set, the user is onlynotified if the predicted degree of relationship at least meets thethreshold. In some embodiments, a user is only notified if both of theuser and the potential relative have “opted in” to receive thenotification. In various embodiments, the user is notified about certainpersonal information of the potential relative, the predictedrelationship, the possible range of relationships, the amount of DNAmatching, or any other appropriate information.

In some embodiments, at 208, the process optionally infers additionalrelationships or refines estimates of existing relationships between theusers based on other relative relationship information, such as therelative relationship information the users have with a third user. Forexample, although Alice and Bob are only estimated to be 6^(th) cousinsafter step 204, if among Alice's relatives in the system, a thirdcousin, Cathy, is also a sibling of Bob's, then Alice and Bob are deemedto be third cousins because of their relative relationships to Cathy.The relative relationships with the third user may be determined basedon genetic information and analysis using a process similar to 200,based on non-genetic information such as family tree supplied by one ofthe users, or both.

In some embodiments, the relatives of the users in the system areoptionally checked to infer additional relatives at 210. For example, ifBob is identified as a third cousin of Alice's, then Bob's relatives inthe system (such as children, siblings, possibly some of the parents,aunts, uncles, cousins, etc.) are also deemed to be relatives ofAlice's. In some embodiments a threshold is applied to limit therelationships within a certain range. Additional notifications aboutthese relatives are optionally generated.

Upon receiving a notification about another user who is a potentialrelative, the notified user is allowed to make certain choices about howto interact with the potential relative. FIG. 3 is a flowchartillustrating an embodiment of a process for connecting a user withpotential relatives found in the database. The process may beimplemented on a relative finder system such as 102, a client systemsuch as 106, or a combination thereof. In this example, it is assumedthat it has been determined that Alice and Bob are possibly 4th cousinsand that Alice has indicated that she would like to be notified aboutany potential relatives within 6 generations. In this example, process300 follows 206 of process 200, where a notification is sent to Alice,indicating that a potential relative has been identified. In someembodiments, the identity of Bob is disclosed to Alice. In someembodiments, the identity of Bob is not disclosed initially to protectBob's privacy.

Upon receiving the notification, Alice decides that she would like tomake a connection with the newly found relative. At 302, an invitationfrom Alice to Bob inviting Bob to make a connection is generated. Invarious embodiments, the invitation includes information about how Aliceand Bob may be related and any personal information Alice wishes toshare such as her own ancestry information. Upon receiving theinvitation, Bob can accept the invitation or decline. At 304, anacceptance or a declination is received. If a declination is received,no further action is required. In some embodiments, Alice is notifiedthat a declination has been received. If, however, an acceptance isreceived, at 306, a connection is made between Alice and Bob. In variousembodiments, once a connection is made, the identities and any othersharable personal information (e.g., genetic information, familyhistory, phenotype/traits, etc.) of Alice and Bob are revealed to eachother and they may interact with each other. In some embodiments, theconnection information is updated in the database.

In some embodiments, a user can discover many potential relatives in thedatabase at once. Additional potential relatives are added as more usersjoin the system and make their genetic information available for therelative finding process. FIGS. 4A-4I are screenshots illustrating userinterface examples in connection with process 300. In this example, therelative finder application provides two views to the user: thediscovery view and the list view.

FIG. 4A shows an interface example for the discovery view at thebeginning of the process. No relative has been discovered at this point.In this example, a privacy feature is built into the relative finderapplication so that close relative information will only be displayed ifboth the user and the close relative have chosen to view closerelatives. This is referred to as the “opt in” feature. The user isfurther presented with a selection button “show close relatives” toindicate that he/she is interested in finding out about close relatives.FIG. 4B shows a message that is displayed when the user selects “showclose relatives”. The message explains to the user how a close relativeis defined. In this case, a close relative is defined as a first cousinor closer. In other words, the system has set a default minimumthreshold of three degrees. The message further explains that unlessthere is already an existing connection between the user and the closerelative, any newly discovered potential close relatives will not appearin the results unless the potential close relatives have also chosen toview their close relatives. The message further warns about thepossibility of finding out about close relatives the user did not knowhe/she had. The user has the option to proceed with viewing closerelatives or cancel the selection.

FIG. 4C shows the results in the discovery view. In this example, sevenpotential relatives are found in the database. The predictedrelationship, the range of possible relationship, certain personaldetails a potential relative has made public, the amount of DNA apotential relative shares with the user, and the number of DNA segmentsthe potential relative shares with the user are displayed. The user ispresented with a “make contact” selection button for each potentialrelative.

FIG. 4D shows the results in the list view. The potential relatives aresorted according to how close the corresponding predicted relationshipsare to the user in icon form. The user may select an icon thatcorresponds to a potential relative and view his/her personalinformation, the predicted relationship, relationship range, and otheradditional information. The user can also make contact with thepotential relative.

FIGS. 4E-4G show the user interface when the user selects to “makecontact” with a potential relative. FIG. 4E shows the first step inmaking contact, where the user personalizes the introduction message anddetermine what information the user is willing to share with thepotential relative. FIG. 4F shows an optional step in making contact,where the user is told about the cost of using the introduction service.In this case, the introduction is free. FIG. 4G shows the final step,where the introduction message is sent.

FIG. 4H shows the user interface shown to the potential relative uponreceiving the introduction message. In this example, the discovery viewindicates that a certain user/potential relative has requested to make acontact. The predicted relationship, personal details of the sender, andDNA sharing information are shown to the recipient. The recipient hasthe option to select “view message” to view the introduction messagefrom the sender.

FIG. 4I shows the message as it is displayed to the recipient. Inaddition to the content of the message, the recipient is given theoption to accept or decline the invitation to be in contact with thesender. If the recipient accepts the invitation, the recipient and thesender become connected and may view each other's information and/orinteract with each other.

Many other user interfaces can be used in addition to or as alternativesof the ones shown above. For example, in some embodiments, at least someof the potential relatives are displayed in a family tree.

Determining the relationship between two users in the database is nowdescribed. In some embodiments, the determination includes comparing theDNA markers (e.g., SNPs) of two users and identifying IBD regions. Thestandard SNP based genotyping technology results in genotype calls eachhaving two alleles, one from each half of a chromosome pair. As usedherein, a genotype call refers to the identification of the pair ofalleles at a particular locus on the chromosome. Genotype calls can bephased or unphased. In phased data, the individual's diploid genotype ata particular locus is resolved into two haplotypes, one for eachchromosome. In unphased data, the two alleles are unresolved; in otherwords, it is uncertain which allele corresponds to which haplotype orchromosome.

The genotype call at a particular SNP location may be a heterozygouscall with two different alleles or a homozygous call with two identicalalleles. A heterozygous call is represented using two different letterssuch as AB that correspond to different alleles. Some SNPs are biallelicSNPs with only two possible states for SNPs. Some SNPs have more states,e.g. triallelic. Other representations are possible.

In this example, A is selected to represent an allele with base A and Brepresents an allele with base G at the SNP location. Otherrepresentations are possible. A homozygous call is represented using apair of identical letters such as AA or BB. The two alleles in ahomozygous call are interchangeable because the same allele came fromeach parent. When two individuals have opposite-homozygous calls at agiven SNP location, or, in other words, one person has alleles AA andthe other person has alleles BB, it is very likely that the region inwhich the SNP resides does not have IBD since different alleles camefrom different ancestors. If, however, the two individuals havecompatible calls, that is, both have the same homozygotes (i.e., bothpeople have AA alleles or both have BB alleles), both have heterozygotes(i.e., both people have AB alleles), or one has a heterozygote and theother a homozygote (i.e., one has AB and the other has AA or BB), thereis some chance that at least one allele is passed down from the sameancestor and therefore the region in which the SNP resides is IBD.Further, based on statistical computations, if a region has a very lowrate of opposite-homozygote occurrence over a substantial distance, itis likely that the individuals inherited the DNA sequence in the regionfrom the same ancestor and the region is therefore deemed to be an IBDregion.

FIG. 5 is a diagram illustrating an embodiment of a process fordetermining the predicted degree of relationship between two users.Process 500 may be implemented on a relative finder system such as 102and is applicable to unphased data. At 502, consecutiveopposite-homozygous calls in the users' SNPs are identified. Theconsecutive opposite-homozygous calls can be identified by seriallycomparing individual SNPs in the users' SNP sequences or in parallelusing bitwise operations as described below. At 504, the distancebetween consecutive opposite-homozygous calls is determined. At 506, IBDregions are identified based at least in part on the distance betweenthe opposite-homozygous calls. The distance may be physical distancemeasured in the number of base pairs or genetic distance accounting forthe rate of recombination. For example, in some embodiments, if thegenetic distance between the locations of two consecutiveopposite-homozygous calls is greater than a threshold of 10 centimorgans(cM), the region between the calls is determined to be an IBD region.This step may be repeated for all the opposite-homozygous calls. Atolerance for genotyping error can be built by allowing some low rate ofopposite homozygotes when calculating an IBD segment. In someembodiments, the total number of matching genotype calls is also takeninto account when deciding whether the region is IBD. For example, aregion may be examined where the distance between consecutive oppositehomozygous calls is just below the 10 cM threshold. If a large enoughnumber of genotype calls within that interval match exactly, theinterval is deemed IBD.

FIG. 6 is a diagram illustrating example DNA data used for IBDidentification by process 500. 602 and 604 correspond to the SNPsequences of Alice and Bob, respectively. At location 606, the allelesof Alice and Bob are opposite-homozygotes, suggesting that the SNP atthis location resides in a non-IBD region. Similarly, at location 608,the opposite-homozygotes suggest a non-IBD region. At location 610,however, both pairs of alleles are heterozygotes, suggesting that thereis potential for IBD. Similarly, there is potential for IBD at location612, where both pairs of alleles are identical homozygotes, and atlocation 614, where Alice's pair of alleles is heterozygous and Bob's ishomozygous. If there is no other opposite-homozygote between 606 and 608and there are a large number of compatible calls between the twolocations, it is then likely that the region between 606 and 608 is anIBD region.

Returning to FIG. 5 , at 508, the number of shared IBD segments and theamount of DNA shared by the two users are computed based on the IBD. Insome embodiments, the longest IBD segment is also determined. In someembodiments, the amount of DNA shared includes the sum of the lengths ofIBD regions and/or percentage of DNA shared. The sum is referred to asIBD_(half) or half IBD because the individuals share DNA identical bydescent for at least one of the homologous chromosomes. At 510, thepredicted relationship between the users, the range of possiblerelationships, or both, is determined using the IBD_(half) and number ofsegments, based on the distribution pattern of IBD_(half) and sharedsegments for different types of relationships. For example, in a firstdegree parent/child relationship, the individuals have IBD_(half) thatis 100% the total length of all the autosomal chromosomes and 22 sharedautosomal chromosome segments; in a second degree grandparent/grandchildrelationship, the individuals have IBD_(half) that is approximately halfthe total length of all the autosomal chromosomes and many more sharedsegments; in each subsequent degree of relationship, the percentage ofIBD_(half) of the total length is about 50% of the previous degree.Also, for more distant relationships, in each subsequent degree ofrelationship, the number of shared segments is approximately half of theprevious number.

In various embodiments, the effects of genotyping error are accountedfor and corrected. In some embodiments, certain genotyped SNPs areremoved from consideration if there are a large number of Mendelianerrors when comparing data from known parent/offspring trios. In someembodiments, SNPs that have a high no-call rate or otherwise failedquality control measures during the assay process are removed. In someembodiments, in an IBD segment, an occasional opposite-homozygote isallowed if there is sufficient opposite-homozygotes-free distance (e.g.,at least 3 cM and 300 SNPs) surrounding the opposite-homozygote.

There is a statistical range of possible relationships for the sameIBD_(half) and shared segment number. In some embodiments, thedistribution patterns are determined empirically based on survey of realpopulations. Different population groups may exhibit differentdistribution patterns. For example, the level of homozygosity withinendogamous populations is found to be higher than in populationsreceiving gene flow from other groups. In some embodiments, the boundsof particular relationships are estimated using simulations of IBD usinggenerated family trees. Based at least in part on the distributionpatterns, the IBD_(half), and shared number of segments, the degree ofrelationship between two individuals can be estimated. FIG. 7 shows thesimulated relationship distribution patterns for different populationgroups according to one embodiment. In particular, Ashkenazi Jews andEuropeans are two population groups surveyed. In panels A-C, for eachcombination of IBD_(half) and the number of IBD segments in an Ashkenazisample group, the 95%, 50% and 5% of obtained nth degree cousinshipsfrom 1 million simulated pedigrees are plotted. In panels D-F, for eachcombination of IBD_(half) and the number of IBD segments in a Europeansample group, the 95%, 50% and 5% of obtained nth degree cousinshipsfrom 1 million simulated pedigrees are plotted. In panels G-I, thedifferences between Ashkenazi and European distant cousinship for theprior panels are represented. Each nth cousinship category is scaled bythe expected number of nth degree cousins given a model of populationgrowth. Simulations are conducted by specifying an extended pedigree andcreating simulated genomes for the pedigree by simulating the mating ofindividuals drawn from a pool of empirical genomes. Pairs of individualswho appear to share IBD_(half) that was not inherited through thespecified simulated pedigree are marked as “unknown” in panels A-F.Thus, special distribution patterns can be used to find relatives ofusers who have indicated that they belong to certain distinctivepopulation groups such as the Ashkenazi.

The amount of IBD sharing is used in some embodiments to identifydifferent population groups. For example, for a given degree ofrelationship, since Ashkenazi tend to have much more IBD sharing thannon-Ashkenazi Europeans, users may be classified as either Ashkenazi ornon-Ashkenazi Europeans based on the number and pattern of IBD matches.

In some embodiments, instead of, or in addition to, determining therelationship based on the overall number of IBD segments and percent DNAshared, individual chromosomes are examined to determine therelationship. For example, X chromosome information is received in someembodiments in addition to the autosomal chromosomes. The X chromosomesof the users are also processed to identify IBD. Since one of the Xchromosomes in a female user is passed on from her father withoutrecombination, the female inherits one X chromosome from her paternalgrandmother and another one from her mother. Thus, the X chromosomeundergoes recombination at a slower rate compared to autosomalchromosomes and more distant relationships can be predicted using IBDfound on the X chromosomes.

In some embodiments, analyses of mutations within IBD segments can beused to estimate ages of the IBD segments and refine estimates ofrelationships between users.

In some embodiments, the relationship determined is verified usingnon-DNA information. For example, the relationship may be checkedagainst the users' family tree information, birth records, or other userinformation.

In some embodiments, the efficiency of IBD region identification isimproved by comparing a user's DNA information with the DNA informationof multiple other users in parallel and using bitwise operations. FIG. 8is a diagram illustrating an embodiment of a highly parallel IBDidentification process. Alice's SNP calls are compared with those ofmultiple other users. Alice's SNP calls are pre-processed to identifyones that are homozygous. Alice's heterozygous calls are not furtherprocessed since they always indicate that there is possibility of IBDwith another user. For each SNP call in Alice's genome that ishomozygous, the zygosity states in the corresponding SNP calls in theother users are encoded. In this example, compatible calls (e.g.,heterozygous calls and same homozygous calls) are encoded as 0 andopposite-homozygous calls are encoded as 1. For example, for homozygousSNP call AA at location 806, opposite-homozygous calls BB are encoded as1 and compatible calls (AA and AB) are encoded as 0; for homozygous SNPcall EE at location 812, opposite-homozygous calls FF are encoded as 1and compatible calls (EE and EF) are encoded as 0, etc. The encodedrepresentations are stored in arrays such as 818, 820, and 824. In someembodiments, the length of the array is the same as the word length ofthe processor to achieve greater processing efficiency. For example, ina 64-bit processing system, the array length is set to 64 and thezygosity of 64 users' SNP calls are encoded and stored in the array.

A bitwise operation is performed on the encoded arrays to determinewhether a section of DNA such as the section between locations 806 and810 includes opposite-homozygous calls. In this example, a bitwise ORoperation is performed to generate a result array 824. Any user with noopposite-homozygous calls between beginning location 806 and endinglocation 816 results in an entry value of 0 in array 824. Thecorresponding DNA segment, therefore, is deemed as an IBD region forsuch user and Alice. In contrast, users with opposite-homozygotes resultin corresponding entry values of 1 in array 824 and they are deemed notto share IBD with Alice in this region. In the example shown, user 1shares IBD with Alice while other users do not.

In some embodiments, phased data is used instead of unphased data. Thesedata can come directly from assays that produce phased data, or fromstatistical processing of unphased data. IBD regions are determined bymatching the SNP sequences between users. In some embodiments, sequencesof SNPs are stored in dictionaries using a hash-table data structure forthe ease of comparison. FIG. 9 is a diagram illustrating an example inwhich phased data is compared to identify IBD. The sequences are splitalong pre-defined intervals into non-overlapping words. Otherembodiments may use overlapping words. Although a preset length of 3 isused for purposes of illustration in the example shown, manyimplementations may use words of longer lengths (e.g. 100). Also, thelength does not have to be the same for every location. In FIG. 9 , inAlice's chromosome pair 1, chromosome 902 is represented by words AGT,CTG, CAA, . . . and chromosome 904 is represented by CGA, CAG, TCA, . .. At each location, the words are stored in a hash table that includesinformation about a plurality of users to enable constant retrieval ofwhich users carry matching haplotypes. Similar hash tables areconstructed for other sequences starting at other locations. Todetermine whether Bob's chromosome pair 1 shares any IBD with Alice's,Bob's sequences are processed into words at the same locations asAlice's. Thus, Bob's chromosome 906 yields CAT, GAC, CCG, . . . andchromosome 908 yields AAT, CTG, CAA, . . . Every word from Bob'schromosomes is then looked up in the corresponding hash table to checkwhether any other users have the same word at that location in theirgenomes. In the example shown, the second and third words of chromosome908 match second and third words of Alice's chromosome 902. Thisindicates that SNP sequence CTGCAA is present in both chromosomes andsuggests the possibility of IBD sharing. If enough matching words arepresent in close proximity to each other, the region would be deemedIBD.

In some embodiments, relative relationships found using the techniquesdescribed above are used to infer characteristics about the users thatare related to each other. In some embodiments, the inferredcharacteristic is based on non-genetic information pertaining to therelated users. For example, if a user is found to have a number ofrelatives that belong to a particular population group, then aninference is made that the user may also belong to the same populationgroup. In some embodiments, genetic information is used to infercharacteristics, in particular characteristics specific to shared IBDsegments of the related users. Assume, for example, that Alice hassequenced her entire genome but her relatives in the system have onlygenotyped SNP data. If Alice's genome sequence indicates that she mayhave inherited a disease gene, then, with Alice's permission, Alice'srelatives who have shared IBD with Alice in the same region thatincludes the disease gene may be notified that they are at risk for thesame disease.

Although the foregoing embodiments have been described in some detailfor purposes of clarity of understanding, the invention is not limitedto the details provided. There are many alternative ways of implementingthe invention. The disclosed embodiments are illustrative and notrestrictive.

What is claimed is:
 1. A computer-implemented method comprising:determining, by a computing system, identical-by-descent (IBD) segmentsof deoxyribonucleic acid (DNA) of a first user and a second user basedon common patterns of nucleotides between the first user and the seconduser, wherein a relative finder database comprises DNA sequenceinformation of a plurality of users, including that of the first userand the second user; determining, by the computing system, a number ofthe IBD segments or an amount of the DNA shared by the first user andthe second user; based on the number of the IBD segments or the amountof the DNA shared by the first user and the second user, estimating, bythe computing system, a relative relationship between the first user andthe second user; and providing, by the computing system and for displayon a client device of the first user or the second user, arepresentation of a graphical user interface indicating the relativerelationship between the first user and the second user.
 2. Thecomputer-implemented method of claim 1, further comprising: prior todetermining IBD segments of DNA of the first user and the second user,receiving, from the first user and the second user, opt-in elections toconsent to being presented with information about potential relativesamong a plurality of users in the relative finder database.
 3. Thecomputer-implemented method of claim 1, wherein the DNA is recombinableDNA.
 4. The computer-implemented method of claim 1, wherein the commonpatterns of nucleotides between the first user and the second user arelengths of DNA of the first user and the DNA of the second userexceeding a predetermined threshold.
 5. The computer-implemented methodof claim 1, wherein the common patterns of nucleotides between the firstuser and the second user are bounded by consecutive opposite-homozygouscalls at single-nucleotide polymorphisms (SNPs) for the first user andthe second user, and wherein the IBD segments are defined based ondistances between the consecutive opposite-homozygous calls.
 6. Thecomputer-implemented method of claim 1, wherein the amount of the DNAshared by the first user and the second user comprises a sum of lengthsof the IBD segments.
 7. The computer-implemented method of claim 1,wherein the amount of the DNA shared by the first user and the seconduser comprises a percentage of the DNA shared by the first user and thesecond user.
 8. The computer-implemented method of claim 1, whereinestimating the relative relationship between the first user and thesecond user comprises estimating a degree of the relative relationshipin proportion to the amount of the DNA shared by the first user and thesecond user.
 9. The computer-implemented method of claim 1, whereinestimating the relative relationship between the first user and thesecond user comprises estimating a degree of the relative relationshipbased on empirical distribution patterns of the amount of the DNA sharedby relatives of various degrees within a population.
 10. Thecomputer-implemented method of claim 9, further comprising: identifyingthe population from a plurality of populations based on the number ofthe IBD segments or the amount of the DNA shared by the first user andthe second user.
 11. The computer-implemented method of claim 1, whereinthe DNA shared by the first user and the second user comprises bothautosomal DNA and X chromosome DNA of the first user and the seconduser.
 12. The computer-implemented method of claim 1, wherein therelative relationship between the first user and the second user is alsobased on analyses of mutations within the IBD segments.
 13. Thecomputer-implemented method of claim 1, wherein the relativerelationship between the first user and the second user is also based onfamily tree or birth records of the first user and the second user. 14.The computer-implemented method of claim 1, wherein determining the IBDsegments comprises: determining homozygous alleges in the DNA of thefirst user; representing, for the homozygous alleges, relative zygositystates between the first user and other users of the plurality of usersin respective bitwise arrays; and performing a bitwise operation on therespective bitwise arrays to identify the IBD segments.
 15. Thecomputer-implemented method of claim 14, wherein lengths of therespective bitwise arrays match a word length of a processor in thecomputing system that performs the bitwise operation.
 16. Thecomputer-implemented method of claim 14, wherein the bitwise operationis a bitwise OR operation.
 17. The computer-implemented method of claim1, further comprising: determining that the DNA of the first userincludes a region that exhibits a gene indicative of a disease;determining that at least one of the IBD segments is in the region; andnotifying the second user that they are at risk for the disease.
 18. Thecomputer-implemented method of claim 1, wherein determining the numberof the IBD segments or the amount of the DNA shared by the first userand the second user comprises determining the number of the IBD segmentsand the amount of the DNA shared by the first user and the second user,and wherein estimating the relative relationship between the first userand the second user is based on the number of the IBD segments and theamount of the DNA shared by the first user and the second user.
 19. Anon-transitory computer-readable medium, having stored thereon programinstructions that, upon execution by a computing device, cause thecomputing device to perform operations comprising: determiningidentical-by-descent (IBD) segments of deoxyribonucleic acid (DNA) of afirst user and a second user based on common patterns of nucleotidesbetween the first user and the second user, wherein a relative finderdatabase comprises DNA sequence information of a plurality of users,including that of the first user and the second user; determining anumber of the IBD segments or an amount of the DNA shared by the firstuser and the second user; based on the number of the IBD segments or theamount of the DNA shared by the first user and the second user,estimating a relative relationship between the first user and the seconduser; and providing, for display on a client device of the first user orthe second user, a representation of a graphical user interfaceindicating the relative relationship between the first user and thesecond user.
 20. A computing system comprising: one or more processors;and memory containing instructions that, when executed by the one ormore processors, cause the computing system to perform operationscomprising: determining identical-by-descent (IBD) segments ofdeoxyribonucleic acid (DNA) of a first user and a second user based oncommon patterns of nucleotides between the first user and the seconduser, wherein a relative finder database comprises DNA sequenceinformation of a plurality of users, including that of the first userand the second user; determining a number of the IBD segments or anamount of the DNA shared by the first user and the second user; based onthe number of the IBD segments or the amount of the DNA shared by thefirst user and the second user, estimating a relative relationshipbetween the first user and the second user; and providing, for displayon a client device of the first user or the second user, arepresentation of a graphical user interface indicating the relativerelationship between the first user and the second user.